package com.qiaofang.dataprocessing.service;

import com.qiaofang.dataprocessing.stub.bean.ListVerifyCodeDTO;
import com.qiaofang.dataprocessing.stub.bean.ProRightsInterestsDTO;
import com.qiaofang.dataprocessing.stub.bean.request.PropertyEmpOrderRequest;
import com.qiaofang.dataprocessing.stub.bean.request.PropertyUpDownProcessingRequest;
import com.qiaofang.dataprocessing.stub.bean.request.SysFieldSyncRequest;
import com.qiaofang.dataprocessing.stub.bean.response.HistoryConsignCodeDTO;
import com.qiaofang.dataprocessing.stub.bean.response.PropertyWaterMarkDTO;
import com.qiaofang.dataprocessing.stub.bean.response.WatermarkDTO;

import java.util.Date;
import java.util.List;
import java.util.Map;


/**
 * 〈一句话功能简述〉<br>
 * 〈功能详细描述〉
 *
 * @author Zym
 * @see [相关类/方法]（可选）
 * @since [产品/模块版本] （可选）
 */
public interface PropertyService {

    /**
     * 筛选满足上架条件的房源uuid
     * @param processingRequest
     * @return
     */
    List<String> getUpPropertyUuidList(PropertyUpDownProcessingRequest processingRequest);

    List<ProRightsInterestsDTO> getProRightsInterests(Date timing);

    List<String> getProEmpOrder(PropertyEmpOrderRequest propertyEmpOrderRequest);

    /**
     * 房源表添加历史数据
     * @return
     */
    List<ListVerifyCodeDTO> getPropertFieldyByParam();

    /**
     * 委托编号(外网)
     * @return
     */
    List<HistoryConsignCodeDTO> getHistoryConsignCode();

    /**
     * 获取房源类型映射（key 类型，value uuidList）
     * @param request
     * @return
     */
    Map<String, List<String>> getPropertyTypeMap(SysFieldSyncRequest request);

    /**
     * 获取房源图片水印设置
     * @return
     */
    PropertyWaterMarkDTO getPropertyImgWatermark();
}
